std::vector::shrink_to_fit

From Cppreference

Jump to: navigation, search
void shrink_to_fit();
(since C++11)

Requests the removal of unused capacity.

It is a non-binding request to reduce capacity to size. It depends on the implementation if the request is fulfilled.

Contents

[edit] Parameters

(none)

[edit] Return value

(none)

[edit] Complexity

Constant

Example

#include <iostream>
#include <vector>
int main()
{
    std::vector<int> v;
    std::cout << "Default-constructd capacity is " << v.capacity() << '\n';
    v.resize(100);
    std::cout << "Capacity of a 100-element vector is " << v.capacity() << '\n';
    v.clear();
    std::cout << "Capacity after clear() is " << v.capacity() << '\n';
    v.shrink_to_fit();
    std::cout << "Capacity after shrink_to_fit() is " << v.capacity() << '\n';
}

Output:

Default-constructd capacity is 0
Capacity of a 100-element vector is 100
Capacity after clear() is 100
Capacity after shrink_to_fit() is 0

[edit] See also

returns the number of elements
(public member function)
returns the number of elements that can be held in currently allocated storage
(public member function)
Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox
In other languages